"""
实现多任务方式:
    - 多进程模式
    - 多线程模式
    - 协程
进程创建
linux下可以使用fork函数创建进程
windows下可以使用multiprocessing模块创建进程
"""

# 创建进程
import os
from multiprocessing import Process
from time import sleep


def task1():
    while True:
        sleep(1)
        print('这是任务1: ', os.getpid(), '----', os.getppid())


# os.getpid()获取进程号, os.getppid()获取父进程号

def task2():
    while True:
        sleep(1)
        print('这是任务2', os.getpid(), '----', os.getppid())


if __name__ == '__main__':
    print(os.getpid())
    # p1和p2是主进程创建的两个子进程
    p1 = Process(target=task1, name='任务1')
    p1.start()
    print(p1.name)  # 是由主进程打印的
    p2 = Process(target=task2, name='任务2')
    p2.start()
    print(p2.name)  # 是由主进程打印的
    print('----------')